Remote computing services are often utilized in order to operate a network on behalf of various users. An organization, for example, may remotely operate a plurality of computing devices that are in communication with one another. The computing devices may be configured in a network according to the organization's needs, utilizing various network devices such as routers, switches, firewalls, and the like. Further, the computing and network devices may include virtual and/or actual computing devices. For example, an organization's network may include a plurality of virtual machines in communication with one another by one or more virtual network devices, thereby forming a virtual network that overlays an actual network. The computing devices may be programmed to communicate according to the topology of the virtual network and various techniques may be used to enable the communications to travel over the actual network which the virtual network overlays.
In some instances, it is desirable to duplicate a network, or at least a portion thereof. For example, an organization may wish to test a network while still allowing the network to function. Similarly, an organization may wish to simulate various stresses on its network without actually subjecting the network to the stresses. The organization may wish to test how a modification to its network may function or may wish to recreate events that caused one or more events, such as a network failure. Generally, there are various reasons why duplication of a network can be useful. Network duplication, however, can be an arduous and time-consuming process, generally requiring substantial intervention configuring a new network to be a duplicate of an old network.